﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SupportLayer.Objetos.Produto
{
	[Table(Constantes.Tabelas.TABELAS.ESPECIFICACAO)]
	public class EspecificacaoClass
	{
		[Column(Constantes.PRODUTO.ESPECIFICACAO.ID)]
		[Display(Name = Constantes.PRODUTO.ESPECIFICACAO.ID)]
		public Int64 ID { get; set; }
		[Column(Constantes.PRODUTO.ESPECIFICACAO.PRODUTO_ID)]
		[Display(Name = Constantes.PRODUTO.ESPECIFICACAO.PRODUTO_ID)]
		public Int64 ProdutoID { get; set; }
		[Column(Constantes.PRODUTO.ESPECIFICACAO.COR)]
		[Required, MaxLength(20, ErrorMessage = "O máximo de caracteres para a cor são 20.")]
		[Display(Name = Constantes.PRODUTO.ESPECIFICACAO.COR)]
		public string Cor { get; set; }
		[Column(Constantes.PRODUTO.ESPECIFICACAO.TAMANHO)]
		[Required, MaxLength(20, ErrorMessage = "O máximo de caracteres para o tamanho são 20.")]
		[Display(Name = Constantes.PRODUTO.ESPECIFICACAO.TAMANHO)]
		public string Tamanho { get; set; }
		[Column(Constantes.PRODUTO.ESPECIFICACAO.OBSERVACAO)]
		[Required, MaxLength(100, ErrorMessage = "O máximo de caracteres para o Observação são 100.")]
		[Display(Name = Constantes.PRODUTO.ESPECIFICACAO.OBSERVACAO)]
		public string Observacao { get; set; }
		[Column(Constantes.PRODUTO.ESPECIFICACAO.CODIGO_LOJA)]
		[Required, MaxLength(15, ErrorMessage = "O máximo de caracteres para o Código da Loja são 15.")]
		[Display(Name = Constantes.PRODUTO.ESPECIFICACAO.CODIGO_LOJA)]
		public string CodigoLoja { get; set; }
		[Column(Constantes.PRODUTO.ESPECIFICACAO.QUANTIDADE)]
		[Display(Name = Constantes.PRODUTO.ESPECIFICACAO.QUANTIDADE)]
		public int Quantidade { get; set; }
	}
}
